草庐IT

c++ - WaitForSingleObject 问题

全部标签

c++ - CRT 和 WIN32 API

我,我想知道在Windows下哪里使用了CRT库。在形成win32API的每个dll中?仅靠visualstudio下开发的软件?换句话说,Windows操作系统是否通过使用CRT以外的其他东西来执行malloc,对文件的写入/读取等?谢谢 最佳答案 C运行时(如果是VisualStudio2010msvcr100.dll)包含C标准库函数的实现。C运行时以特定于平台的方式实现,在Windows情况下,它使用kernel32.dll(Win32API的一部分)中的函数来执行其任务。您可以使用DependencyWalker查看导出和

c - 我需要重写这行代码,需要帮助

我正在尝试编译下面找到的这段代码。但是,我在iteminfo_fields、weaponinfo_fields和projectileinfo_fields定义的每一行中收到一条错误消息,提示“初始化值必须是常量表达式”,每个“{NULL,0,0}”的最后一行除外我猜它来自ITEMINFO_OFS()、WEAPON_OFS()、PROJECTILE_OFS()。我试图理解这三行:#defineWEAPON_OFS(x)(size_t)&(((weaponinfo_t*)0)->x)#definePROJECTILE_OFS(x)(size_t)&(((projectileinfo_t*)

c - 如何获得某些 Visual Basic 6 控件的 IUnknown* 指针(如果有)?

我想从带有IUnknown*的VisualBasic6程序中调用一些C函数。假设我知道我的VB6应用程序中的某些控件是ActiveX控件,我能否从中获取底层IUnknown*(可能通过转换?)将其传递给C函数? 最佳答案 所有COM接口(interface)都派生自IUnknown,您可以在任何有效的接口(interface)指针上使用IUnknown方法。如果您需要对同一组件的额外引用,但不关心是哪个接口(interface),则使用IUknown的QueryInterface方法。

Windows批处理命令问题,启动excel temp.xls

我想知道如果我这样做startexceltemp.xls操作系统将启动一个新的excel实例并在该实例中打开工作簿temp.xls,作为一个原子操作。我现在有的是startexcelstarttemp.xls通常这两个命令会弄乱我的其他excel实例,即在另一个已打开另一个工作簿的excel实例中打开temp.xls。谢谢, 最佳答案 虽然我认为“启动exceltemp.xls”将在start启动的Excel实例中打开temp.xls,但如果您使用"excel"[/]"temp.xls"有关选择,请参阅cliforexcel(为您的

c++ - 适用于 Windows 的 Memcached 客户端库

我想为我的C++应用程序使用memcached。为此,我需要一个客户端库,例如类似于mysqlclient。但是我真的很难找到合适的东西。一切似乎都只是linux,虽然有些声称与Windows兼容,但它们需要cygwin和其他我真正想避免的东西。所以我正在寻找的是带有头文件的预编译Windows库(最好),或者我可以使用VisualStudio轻松编译的东西。如果没有这样的东西,你认为我自己写它会是个坏主意吗?该协议(protocol)看起来很简单,我真的只需要基本命令(设置/获取等)。 最佳答案 你试过这个吗?http://cod

c++ - WaitForSingleObject 问题

先仔细阅读问题。有一个从CTest类的CreateInstance生成的工作线程。这是该类的原型(prototype)。hThread是线程句柄,hEventShutdown是程序退出时用于关闭线程的事件。WaitForShutdown是用于向hEventShutdown发出信号并等待线程句柄直到线程正常退出的公共(public)函数。WaitForShutdown在应用程序退出时被调用。//pseudocodeCTest{public:CTest*CreateInstance();staticthreadproc(void*pv);voidWaitForShutdown();publ

c - Wndproc 和 hook 是否在主线程中?

抱歉我的愚蠢问题,但是主线程中的wndproc和Hook(调用时)?如果是,是否意味着我不能将它们用于构建键盘输入缓冲区? 最佳答案 您的窗口过程(以及任何子类窗口过程、Hook等)在调用CreateWindow的线程中运行(要求同一线程稍后处理消息队列,窗口过程实际运行当您的主消息分发循环调用DispatchMessage时)。不确定“为键盘输入构建缓冲区”是什么意思。 关于c-Wndproc和hook是否在主线程中?,我们在StackOverflow上找到一个类似的问题:

c - OpenSSL 库 : 2 on Linux libcrypto and libssl and more than 13 on windows. 我应该在 Windows 上链接什么来编译我的示例?

所以我看this示例代码:#include#include#include"openssl/sha.h"voidsha256(char*string,charoutputBuffer[65]){unsignedcharhash[SHA256_DIGEST_LENGTH];SHA256_CTXsha256;SHA256_Init(&sha256);SHA256_Update(&sha256,string,strlen(string));SHA256_Final(hash,&sha256);inti=0;for(i=0;i我应该将哪些库链接到我的项目以在Windows上编译它?

c - 如何从注册表中获取每个键和子键?

我正在尝试编写一个应用程序,我可以在其中提供一个注册表路径,例如HKLM\hardware\description\system并且我的应用程序应该在系统下读取每个键名,如果有子键它们的名字,如果还有更多的子项然后他们的名字等等...我的应用程序正在运行(或多或少),但我的问题是如何计算子键?比如system下有2个key,a和b,a下多了3个key,b下多了5个,那我应该怎么算自己在哪个sublevel呢?这很重要,因为我必须知道如何连接注册表路径?到目前为止,这是我的代码(大部分来自msdn,但我找不到类似的示例):#include#include#include#include#

python - 与 bsddb 有关的许可证问题

我计划在用python为windows和linux编写的商业产品中使用bsddb/pybsddb。我也打算用py2exe。但我不确定法律影响。我看过商业产品只要是用python写的就不用付版税。是真的吗? 最佳答案 Python在PythonLicense下发布.它是宽松的,因此您可以将它与闭源商业软件一起使用。OracleBerkeleyDB根据SleepycatLicense获得许可,这需要您分发代码源。除非您从Oracle购买商业许可证,否则您不能将它用于闭源商业软件。Pybsddb似乎没有明确的许可证——在他们的源代码树中没